#!/bin/bash


# 定义变量
SMB_SERVER="192.168.1.10"
SMB_SHARES=("sharea" "shareb" "sharec")
MOUNT_POINT="/mnt/mydisk/docker_data/docker-download/qbittorrentee_dd/downloads/"
USERNAME="root"
PASSWORD="homesmart123"
#USERNAME=""
#PASSWORD=""
SMB_PORT=445


# 设置要检查的目录或文件
CHECKFILE="$MOUNT_POINT/check.file"

# 判断目标是否存在，如果目录存在，退出脚本
if [ -e "$CHECKFILE" ]; then
  echo "目录 $CHECKFILE 已存在，脚本将结束。"
  exit 0
fi



# 先卸载
#umount /mnt/my_usb

# 循环挂载 SMB 共享
for SMB_SHARE in "${SMB_SHARES[@]}"; do
  # 用户名或密码为空走匿名挂载
  if [ -z "$USERNAME" ] || [ -z "$PASSWORD" ]; then
    # 用户名或密码为空的逻辑
    mount -t cifs //$SMB_SERVER/"$SMB_SHARE" "$MOUNT_POINT" -o vers=3.0,iocharset=utf8,uid=$(id -u),gid=$(id -g),file_mode=0777,dir_mode=0777
    if [ $? -eq 0 ]; then
      echo "成功挂载 $SMB_SHARE (匿名挂载)！并退出脚本。"
      docker restart qbittorrentee qbittorrent
      exit 0
    else
      echo "匿名挂载 $SMB_SHARE 失败！继续循环挂载。"
    fi
  else
    # 用户名和密码不为空的逻辑
    CMD="mount -t cifs //$SMB_SERVER/$SMB_SHARE $MOUNT_POINT -o username=$USERNAME,password=$PASSWORD,vers=3.0,iocharset=utf8,uid=$(id -u),gid=$(id -g),file_mode=0777,dir_mode=0777"
    echo "挂载命令输出: $CMD"
    eval $CMD
    if [ $? -eq 0 ]; then
      echo "成功挂载 $SMB_SHARE (使用用户名和密码)！并退出脚本。"
      docker restart qbittorrentee qbittorrent
      exit 0
    else
      echo "使用用户名和密码挂载 $SMB_SHARE 失败！继续循环挂载。"
    fi
  fi
done

# 脚本结束
exit 0
